In recent years, large capacity nonvolatile memories such as a flash memory and an MRAM (Magnetoresistive Random Access Memory) have been widespread. Therefore, in computer system, a trend of the usage of these memories instead of a DRAM (Dynamic Random Access Memory) has been developing.
In storage systems, a scheme of using DRAMs as cache memories to reduce the number of accesses to HDDs and to improve the performances of a storage system has been adopted conventionally. In addition to the using of DRAMs, a case where nonvolatile memories are used in combination of DRAMs has been well known as disclosed in Patent Literature 1. Furthermore, in order to taking measures against a hardware failure, as disclosed in Patent literature 2, a scheme in which two hardware components are prepared for data to be duplicated in each of the two hardware components.
In a server system, as a software interface for using nonvolatile memories instead of volatile memories such as a DRAM, a hardware-software interface has been proposed in which writing data in a DRAM is executed in a usual manner, and at a timing when the nonvolatilization of data should be assured, commit processing is performed as disclosed in Nonpatent Literature 1. With the use of hardware and software in conformity to this interface, the nonvolatile of data can be assured even in the case of a failure such as power-off.
In addition, disclosed in Nonpatent literature 1 is a technology in which nonvolatile memories can be treated with the use of a software interface equal to a software interface used for treating DRAMs.